<!doctype html>
<meta charset="utf-8">
<title> Web Speech Recognition </title>

<script>
var successes = 0;
var hash = window.location.hash;
var recognizer = new webkitSpeechRecognition();

(function () {

  switch (hash) {
    // Just probe if creating a SpeechRecognition object worked.
    case "#precheck":
      notify(recognizer == null ? 'fail' : 'success');
      return;

    case "#oneshot":
      recognizer.continuous = false;
      break;

    case "#continuous":
      recognizer.continuous = true;
      break;

    default:
      return;
  }

  recognizer.onresult = function(e) {
    var value = e.results[e.resultIndex][0].transcript;
    if (value == 'Pictures of the moon') {
      successes++;
      notify('goodresult' + successes);
    } else {
      notify('badresult');
    }
  }
  recognizer.onerror = function(e) {
    console.log('error', e);
    notify('error' + e.error);
  }
  recognizer.onnomatch = function() { console.log('nomatch'); }
  recognizer.onaudiostart = function() { console.log('audiostart'); }
  recognizer.onsoundstart = function() { console.log('soundstart'); }
  recognizer.onsoundend = function() { console.log('soundend'); }
  recognizer.onaudioend = function() { console.log('audioend'); }

  recognizer.start();

})();

function notify(status) {
  document.location = '#' + status;
  document.location.reload(true);
}
</script>
